package com.youlin.service;

import com.youlin.dto.BaseDataResDto;
import com.youlin.dto.BaseResDto;
import com.youlin.dto.PageDataResDto;
import com.youlin.dto.PageInfo;
import com.youlin.dto.req.AddAMReqDto;
import com.youlin.dto.req.FindAllAmReqDto;
import com.youlin.dto.req.UpdAMStatusReqDto;
import com.youlin.dto.res.AMStatusResDto;
import com.youlin.dto.res.AppointmentResDto;
import com.youlin.dto.res.NeedLoginResDto;
import com.youlin.entities.BygAdmin;
import com.youlin.entities.BygAppointment;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;

public interface BygAppointmentService extends IService<BygAppointment> {

    PageDataResDto<List<AppointmentResDto>> findAllAppointments(BygAdmin currentAdmin, FindAllAmReqDto data, PageInfo pageInfo);

    BaseDataResDto<List<AMStatusResDto>> findAllAMStatus(Integer roleId);

    BaseResDto delAppointment(Integer amId);

    BaseResDto editAppointment(BygAdmin currentAdmin, AddAMReqDto data);

    BaseResDto updAMStatus(UpdAMStatusReqDto data);

    BaseDataResDto<Boolean> isNeedLogin(String amUuId);

    BaseResDto addAppointment(BygAdmin currentAdmin, AddAMReqDto data);

    BygAppointment findAppointmentByUuId (String amUuId);

}
